.\"
.\" Author: Joao Marcelo Martins <marcelo.martins@rackspace.com> or <btorch@gmail.com>
.\" Copyright (c) 2010-2011 OpenStack Foundation.
.\"
.\" Licensed under the Apache License, Version 2.0 (the "License");
.\" you may not use this file except in compliance with the License.
.\" You may obtain a copy of the License at
.\"
.\"    http://www.apache.org/licenses/LICENSE-2.0
.\"
.\" Unless required by applicable law or agreed to in writing, software
.\" distributed under the License is distributed on an "AS IS" BASIS,
.\" WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
.\" implied.
.\" See the License for the specific language governing permissions and
.\" limitations under the License.
.\"
.TH swift-recon 1 "8/26/2011" "Linux" "OpenStack Swift"

.SH NAME
.LP
.B swift-recon
\- OpenStack Swift recon middleware cli tool

.SH SYNOPSIS
.LP
.B swift-recon
\ <server_type> [-v] [--suppress] [-a] [-r] [-u] [-d] [-l] [-T] [--md5] [--auditor] [--updater] [--expirer] [--sockstat]

.SH DESCRIPTION
.PP
The swift-recon cli tool can be used to retrieve various metrics and telemetry information about
a cluster that has been collected by the swift-recon middleware.

In order to make use of the swift-recon middleware, update the object-server.conf file and
enable the recon middleware by adding a pipeline entry and setting its option(s). You can view
more information in the example section below.


.SH OPTIONS
.RS 0
.PD 1
.IP "\fB<server_type>\fR"
account|container|object - Defaults to object server.
.IP "\fB-h, --help\fR"
show this help message and exit
.IP "\fB-v, --verbose\fR"
Print verbose information
.IP "\fB--suppress\fR"
Suppress most connection related errors
.IP "\fB-a, --async\fR"
Get async stats
.IP "\fB--auditor\fR"
Get auditor stats
.IP "\fB--updater\fR"
Get updater stats
.IP "\fB--expirer\fR"
Get expirer stats
.IP "\fB-r, --replication\fR"
Get replication stats
.IP "\fB-u, --unmounted\fR"
Check cluster for unmounted devices
.IP "\fB-d, --diskusage\fR"
Get disk usage stats
.IP "\fB--top=COUNT\fR"
Also show the top COUNT entries in rank order
.IP "\fB--lowest=COUNT\fR"
Also show the lowest COUNT entries in rank order
.IP "\fB--human-readable\fR"
Use human readable suffix for disk usage stats
.IP "\fB-l, --loadstats\fR"
Get cluster load average stats
.IP "\fB-q, --quarantined\fR"
Get cluster quarantine stats
.IP "\fB--validate-servers\fR"
Validate servers on the ring
.IP "\fB--md5\fR"
Get md5sum of servers ring and compare to local copy
.IP "\fB--sockstat\fR"
Get cluster socket usage stats
.IP "\fB--driveaudit\fR"
Get drive audit error stats
.IP "\fB-T, --time\fR"
Check time synchronization
.IP "\fB--swift-versions\fR"
Check swift version
.IP "\fB--all\fR"
Perform all checks. Equivalent to \-arudlqT
\-\-md5 \-\-sockstat \-\-auditor \-\-updater \-\-expirer
\-\-driveaudit \-\-validate\-servers \-\-swift-versions
.IP "\fB--region=REGION\fR"
Only query servers in specified region
.IP "\fB-z ZONE, --zone=ZONE\fR"
Only query servers in specified zone
.IP "\fB-t SECONDS, --timeout=SECONDS\fR"
Time to wait for a response from a server
.IP "\fB--swiftdir=PATH\fR"
Default = /etc/swift
.PD
.RE



.SH EXAMPLE
.LP
.PD 0
.RS 0
.IP "ubuntu:~$ swift-recon -q --zone 3"
.IP "================================================================="
.IP "[2011-10-18 19:36:00] Checking quarantine dirs on 1 hosts... "
.IP "[Quarantined objects] low: 4, high: 4, avg: 4, total: 4 "
.IP "[Quarantined accounts] low: 0, high: 0, avg: 0, total: 0 "
.IP "[Quarantined containers] low: 0, high: 0, avg: 0, total: 0 "
.IP "================================================================="
.RE

.RS 0
Finally if you also wish to track asynchronous pending's you will need to setup a
cronjob to run the swift-recon-cron script periodically:

.IP "*/5 * * * * swift /usr/bin/swift-recon-cron /etc/swift/object-server.conf"
.RE




.SH DOCUMENTATION
.LP
More documentation about OpenStack Swift can be found at
.BI https://docs.openstack.org/swift/latest/
Also more specific documentation about swift-recon can be found at
.BI https://docs.openstack.org/swift/latest/admin_guide.html\#cluster-telemetry-and-monitoring



.SH "SEE ALSO"
.BR object-server.conf(5),


